1. Field of the Invention
The present invention relates to systems and methods used for maintaining and managing software programs known as server systems or “servers” in a distributed computing environment. More particularly, the present invention relates to systems and methods used to receive portions of a network client administration system to administer different versions of disparate server systems including a multitude of software packages without having to correspondingly update the network client administration system.
2. Description of the Related Art
Electronic data networks and their components are well known. Many companies, for example, have at least one computer network, such as a local area network (LAN), which connects the company's computer systems. It is not uncommon for companies to have several elaborate computer networks spanning many locations, possibly internationally. Such computer networks are constructed of cables, servers both physical and logical, routers, etc., with such servers being a critical component in a particular network architecture. Accordingly, the maintenance and administration (version control, administration, etc.) of network servers, web servers, etc., and their software backplanes, are vital to the performance of such electronic data networks.
Varied forms of administrative tools are used to maintain and administer network servers, web servers, etc. and, especially, the software backplanes on which such server systems rely. Usually, an administrative client of some sort resides on a network administrator's data processing system and is used to access and administer a server (network, web, etc.) via an electronic data network (e.g., remote administration, etc.). The administrative client software must be compatible with the versions of server software running on the servers resident in a particular network in order to access and administer the servers. As such, prior administration schemes called for dedicated, version specific administration clients. As a result, version control and maintenance of such software became cumbersome and difficult.
Frequently, servers reside both on internal networks and in external networks, where servers may be only accessible via the Internet or a dedicated line. During the growth of a network, servers may be added, and each new server will most likely have a latest version of a server software package loaded. Therefore, the maintenance and administration of electronic data networks has become even more difficult as servers are replaced, a network grows, etc. For example, a network administrator may maintain a web server, a mail server and a dedicated application server (e.g., an electronic commerce shopping cart server system, etc.). Each server could run a different version of a software package. In order to maintain and administer each server, the network administrator may be required to have three different versions of a client administrator, one for each server (e.g., one administration client each for the web server, the mail server, and the application server).
As such, there exists a problem associated with maintaining compatible versions of network servers and client administration tools on electronic data networks for the maintenance and administration of network servers.
Several proposals have been put forth to address the administration problems mentioned above. However, all such prior proposals have focussed on the notion of creating individual, version-specific client-side administration software packages that are keyed to particular server systems. For example, such prior proposals suggest exhaustively upgrading client-side administrator software so that each client administrator is compatible with a particular version of server software. Unfortunately, there are several problems with this proposed solution. One problem is that the latest version of a client administrator may not be backward compatible with older versions of the server system software, and therefore, an older version of the client-side software might also be necessary to maintain a growing network. Another problem is scalability. For example, a system could not easily scale to include new server products that were developed after the introduction of the client administrator's introduction, and different versions of the same server administration components could not usually coexist peacefully in the runtime environment. And, a third problem is that the configuration management associated with maintaining different versions of software both server and client-side can take up a significant amount of time and resources.
Thus, there exists a need to provide new and improved systems and methods to solve the aforementioned problems associated with maintaining and managing versions of network servers and the like. To be viable, such systems and methods must be implemented without causing significant burdens to network infrastructures or undue increases in infrastructure costs.